/*
 * RegistroConsultaTituloCatalograficoMBean.java
 *
 * UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE
 * Superintendencia de Informatica
 * Diretoria de Sistemas
 * Campos Universitario Lagoa Nova
 * Natal - RN - Brasil
 *
 * Este software eh confidencial e de propriedade intelectual da
 * UFRN - Universidade Federal do Rio Grande no Norte
 * Nao se deve utilizar este produto em desacordo com as normas
 * da referida instituicao.
 */
package br.ufrn.sigaa.biblioteca.circulacao.jsf;

import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;

import br.ufrn.arq.dominio.Comando;
import br.ufrn.sigaa.arq.jsf.SigaaAbstractController;
import br.ufrn.sigaa.arq.negocio.SigaaListaComando;
import br.ufrn.sigaa.biblioteca.circulacao.dominio.RegistroConsultaTituloCatalografico;
import br.ufrn.sigaa.biblioteca.circulacao.negocio.MovimentoRegistroConsultaTitulo;
import br.ufrn.sigaa.biblioteca.processos_tecnicos.dominio.TituloCatalografico;

/**
 * MBean auxiliar para o registro de consultas a titulos catalograficos
 * @author Fred_Castro
 */

@Component("registroConsultaTitulo")
@Scope("request")
public class RegistroConsultaTituloCatalograficoMBean extends SigaaAbstractController<RegistroConsultaTituloCatalografico>{
	
	/**
	 * Metodo que realiza o registro de uma consulta a um titulo catalografico
	 * @param titulo
	 */
	public void registrar(TituloCatalografico titulo){
		
		try {
			
			// Prepara o movimento do registro
			Comando comando = SigaaListaComando.REGISTRAR_CONSULTA_TITULO;
			prepareMovimento(comando);
			
			MovimentoRegistroConsultaTitulo movimento = new MovimentoRegistroConsultaTitulo();
	
			// Seta o titulo catalografico a ser movimentado
			movimento.setTituloCatalografico(titulo);
			movimento.setCodMovimento(comando);

			// Tenta executar o registro
			executeWithoutClosingSession(movimento);
		} catch (Exception e) {
			notifyError(e);
			e.printStackTrace();
		}
	}
}
